package model

type IFCGatePersonalInfo struct {
	MerOrderNo       string `json:"mer_order_no"`
	PersonalType     string `json:"personal_type"`
	Type             string `json:"type"`
	Name             string `json:"name"`
	IssuPlace        string `json:"issu_place"`
	Nationality      string `json:"nationality"`
	IdNumber         string `json:"id_number"`
	BirthDate        string `json:"birth_date"`
	CertificateDate  string `json:"certificate_date"`
	ResidenceCountry string `json:"residence_country"`
	Address          string `json:"address"`
	Certificates     string `json:"certificates"`
}

type IFCGateReMaterial struct {
	MerOrderNo          string `json:"mer_order_no"`
	FinancialStatements string `json:"financial_statements"`
	Questionnaire       string `json:"questionnaire"`
	BestCustomer        string `json:"best_customer"`
	BestPartner         string `json:"best_partner"`
}

type IFCGateTransaction struct {
	MerOrderNo  string `json:"mer_order_no"`
	TradeType   string `json:"trade_type"`
	TradeOption string `json:"trade_option"`
	Country     string `json:"country"`
}

type IFCGateVaInfo struct {
	MerOrderNo       string `json:"mer_order_no"`
	MerChantNo       string `json:"merchant_no"`
	ParentCode       string `json:"parent_code"`
	ApplyCode        string `json:"apply_code"`
	Area             string `json:"area"`
	Currency         string `json:"currency"`
	AcctSimpleName   string `json:"acct_simple_name"`
	BankType         string `json:"bank_type"`
	ShopName         string `json:"shop_name"`
	ShopUrl          string `json:"shop_url"`
	CollectType      string `json:"collect_type"`
	CollectName      string `json:"collect_name"`
	WebSiteUrl       string `json:"web_site_url"`
	IsSameName       string `json:"is_same_name"`
	BusDesDocument   string `json:"bus_des_document"`
	StoreHoldCertify string `json:"store_hold_certify"`
	CallBackUrl      string `json:"call_back_url"`
	OtherPath        string `json:"other_path"`
	Postscript       string `json:"post_script"`
	BizFlow          string `json:"biz_flow"`
	Status           string `json:"status"`
}

type IFCGateMerChantVAInfo struct {
	MerOrderNo               string `json:"mer_order_no"`
	BizFlow                  string `json:"biz_flow"`
	MerchantNo               string `json:"merchant_no"`
	AuthorizeCode            string `json:"authorize_code"`
	Email                    string `json:"email"`
	PhoneAreaCode            string `json:"phone_area_code"`
	PhoneNum                 string `json:"phone_num"`
	ReferralChannel          string `json:"referral_channel"`
	CountryCode              string `json:"country_code"`
	MerNameEn                string `json:"mer_name_en"`
	MerNameCn                string `json:"mer_name_cn"`
	EstablishDate            string `json:"establish_date"`
	BrExpiryDate             string `json:"br_expiry_date"`
	RegistrationAddress      string `json:"registration_address"`
	EnterprisePath           string `json:"enterprise_path"`
	ParentRemark             string `json:"parent_remark"`
	OwnerShipPath            string `json:"owner_ship_path"`
	ParentCertificate        string `json:"parent_certificate"`
	ParentCompany            string `json:"parent_company"`
	BranchRemark             string `json:"branch_remark"`
	BranchCompany            string `json:"branch_company"`
	Certificate              string `json:"certificate"`
	CertificateNumber        string `json:"certificate_number"`
	CompanyCertificate       string `json:"company_certificate"`
	CompanyCertificateNumber string `json:"company_certificate_number"`
	ParticipantsType         string `json:"participants_type"`
	Nnc1Path                 string `json:"nnc1_path"`
	Nar1Path1                string `json:"nar1_path1"`
	Mermorandum              string `json:"mermorandum"`
	CustomerIdentity         string `json:"customer_identity"`
	//Customer                 []PersonalInfoList `json:"customer"`
	//Shareholder              []PersonalInfoList `json:"shareholder"`
	//Director                 []PersonalInfoList `json:"director"`
	//LegalPerson              []PersonalInfoList `json:"legal_person"`
	Authorization          string `json:"authorization"`
	SourceFunds            string `json:"source_funds"`
	PaymentPurpose         string `json:"payment_purpose"`
	RiskCountryTransaction string `json:"risk_country_transaction"`
	RiskCountries          string `json:"risk_countries"`
	AddMaterial            string `json:"add_material"`
	//ReMaterial             ReMaterial        `json:"re_material"`
	RealCompanyAddress string `json:"real_company_address"`
	AddressMaterial    string `json:"address_material"`
	AddressType        string `json:"address_type"`
	CompanyWebsite     string `json:"company_website"`
	ClientCountry      string `json:"client_country"`
	BusinessCountry    string `json:"business_country"`
	SuppliersCountry   string `json:"suppliers_country"`
	InCountry          string `json:"in_country"`
	OutCountry         string `json:"out_country"`
	LastYearTurnover   string `json:"last_year_turnover"`
	TransactionAmount  string `json:"transaction_amount"`
	//Transaction        []TransactionList `json:"transaction"`
	WebSiteOrApp   string `json:"website_or_app"`
	BusinessNature string `json:"business_nature"`
	NoticeMarker   string `json:"notice_marker"`
	CallBackUrl    string `json:"call_back_url"`
	OtherPath      string `json:"other_path"`
	Postscript     string `json:"post_script"`
	VaFlag         string `json:"va_flag"`
	//VaInfo         	 []VaInfoList   `json:"va_info"`
	Status      string `json:"status"`
	AccessToken string `json:"access_token"`
	Account     string `json:"account"`
	Message     string `json:"message"`
}

type IFCGATEMerChantVATmp struct {
	Account   string `json:"account"`
	ReqJson   string `json:"req_json"`
	ReqBackup string `json:"req_backup"`
}

type IFCGateNature struct {
	Code       string `json:"code"`
	Desc       string `json:"desc"`
	NatureType string `json:"nature_type"`
}

type IFCGateSourceFund struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}

type IFCGatePaymentPurpose struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}

type IFCGateTurnover struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}

type IFCGateTransactionBase struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}

type IFCGateTradeCodeType struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}

type IFCGateTradePurpose struct {
	Code string `json:"code"`
	Desc string `json:"desc"`
}
